// console.log(a);  //undefined    因为会出现声明提升
// var a = 1;


// var a = 1
// function fn() {
//     var a = 2
//     function a() {}
//     console.log(a);
// }
// fn()


function fn(a) {
    console.log(a);
    var a = 123
    console.log(a);
    function a() { }  //函数声明
    var b = function () { }  //函数表达式
    console.log(b);
    function d() { }
    var d = a
    console.log(d);
}
fn(1)